$(function () {
    // 渲染页面
    var currentPage = 1;
    var pageSize = 2;
    function render() {
        $.ajax({
            type: 'get',
            url: '/product/queryProductDetailList',
            data: {
                page: currentPage,
                pageSize
            },
            dataType: 'json',
            success: function (res) {
                console.log(res);
                $('tbody').html(template('tmp', res));
                setPage(res.total);
            }
        })

    }
    render();

    // 分页
    function setPage(total) {
        $("#paginator").bootstrapPaginator({
            bootstrapMajorVersion: 3,//默认是2，如果是bootstrap3版本，这个参数必填
            currentPage: currentPage,//当前页
            totalPages: Math.ceil(total / pageSize),//总页数
            size: "small",//设置控件的大小，mini, small, normal,large
            onPageClicked: function (event, originalEvent, type, page) {
                //为按钮绑定点击事件 page:当前点击的按钮值
                currentPage = page;
                render();
            }

        });

    }

    // 下拉列表填充
    $.ajax({
        type: 'get',
        url: '/category/querySecondCategoryPaging',
        data: {
            page: 1,
            pageSize: 100
        },
        dataType: 'json',
        success: function (res) {
            console.log(res);
            $('.cate-two-list').html(template('tmp-two', res));
        }
    })

    // 点击a标签选中
    // 点击a标签,将内容赋值给表单,将内容存在隐藏域
    $('.cate-two-list').on('click', 'a', function () {
        $('.cate-btn').text($(this).text());
        $('#brandId').val($(this).data('id'));
        // 恢复下拉列表状态
        $('.form-add').data('bootstrapValidator').updateStatus('brandId', 'VALID');
    })

    // 图片上传
    // 要求上传三张图片,只保留前三张
    var picArr = [];
    $("#file").fileupload({
        dataType: "json",
        //e：事件对象
        //data：图片上传后的对象，通过data.result.picAddr可以获取上传后的图片地址
        done: function (e, data) {
            console.log(data);
            var img = data.result;
            picArr.unshift(img);
            $('.img-box').prepend('<img src = "' + img.picAddr + '" alt = "" height = "60" >');

            //   判断条件,如果大于三张图片,就删除最后面的一张图片
            if (picArr.length > 3) {
                picArr.pop();
                $('.img-box img:last-child').remove();
            }
            //   如果等于三张图片,就赋值给隐藏域
            if (picArr.length == 3) {
                $('#picArr').val(JSON.stringify(picArr));
                // 恢复图片的检验状态
                $('.form-add').data('bootstrapValidator').updateStatus('picArr', 'VALID');
            }
            console.log('picArr', picArr);

        }
    });



    // 表单非空校验
    //使用表单校验插件
    $('.form-add').bootstrapValidator({
        //1. 指定不校验的类型，默认为[':disabled', ':hidden', ':not(:visible)'],可以不设置
        excluded: [':disabled'],

        //2. 指定校验时的图标显示，默认是bootstrap风格
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },

        //3. 指定校验字段
        fields: {
            //校验用户名，对应name表单的name属性
            brandId: {
                validators: {
                    //不能为空
                    notEmpty: {
                        message: '二级分类不能为空'
                    }

                }
            },
            proName: {
                validators: {
                    //不能为空
                    notEmpty: {
                        message: '商品名称不能为空'
                    }

                }
            },
            proDesc: {
                validators: {
                    //不能为空
                    notEmpty: {
                        message: '商品描述不能为空'
                    }

                }
            },
            num: {
                validators: {
                    //不能为空
                    notEmpty: {
                        message: '商品库存不能为空'
                    },
                    regexp: {
                        regexp: /^[1-9]\d*$/,
                        message: '商品库存不能以0开头'
                    }

                }
            },
            size: {
                validators: {
                    //不能为空
                    notEmpty: {
                        message: '商品尺码不能为空'
                    },
                    regexp: {
                        regexp: /^[1-9]\d-[1-9]\d$/,
                        
                        message: '商品尺寸必须为xx-xx格式'
                    }

                }
            },
            oldPrice: {
                validators: {
                    //不能为空
                    notEmpty: {
                        message: '商品原价不能为空'
                    },
                    regexp: {
                        regexp: /^[0-9]*$/,
                        message: '商品原价必须为数字格式'
                    }

                }
            },
            price: {
                validators: {
                    //不能为空
                    notEmpty: {
                        message: '商品现价不能为空'
                    },
                    regexp: {
                        regexp: /^[0-9]*$/,
                        message: '商品现价必须为数字格式'
                    }

                }
            },
            picArr: {
                validators: {
                    //不能为空
                    notEmpty: {
                        message: '图片不能为空'
                    }

                }
            },

        }
    });

    // 提交数据
    $('.form-add').on('success.form.bv', function (e) {
        e.preventDefault();
        //使用ajax提交逻辑
        $.ajax({
            type: 'post',
            url: '/product/addProduct',
            data: $('.form-add').serialize(),
            dataType: 'json',
            success: function (res) {
                console.log(res);
                render();
                $('.modal-add').modal('hide');
                $('.form-add').data('bootstrapValidator').resetForm(true);
                // 手动恢复图片和按钮的样式
                $('.cate-btn').text('请选择二级分类');
                $('.img-box').empty();
                picArr = [];
            }
        })
    });
})